package com.hp.utils;

import java.io.File;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.junit.Test;
import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.exception.InvalidConfigurationException;
import org.mybatis.generator.exception.XMLParserException;
import org.mybatis.generator.internal.DefaultShellCallback;


public class JunitTest {
	
	@Test
	public void test1()
	{
		try {
			List<String> warnings = new ArrayList<String>();  
	        boolean overwrite = true;  
	        String genCfg = "/generator.xml";  
	        File configFile = new File(JunitTest.class.getResource(genCfg).getFile());  
	        ConfigurationParser cp = new ConfigurationParser(warnings);  
	        org.mybatis.generator.config.Configuration config = null;  
	        try {  
	            config = cp.parseConfiguration(configFile);  
	        } catch (IOException e) {  
	            e.printStackTrace();  
	        } catch (XMLParserException e) {  
	            e.printStackTrace();  
	        }  
	        DefaultShellCallback callback = new DefaultShellCallback(overwrite);  
	        MyBatisGenerator myBatisGenerator = null;  
	        try {  
	            myBatisGenerator = new MyBatisGenerator(config, callback, warnings);  
	        } catch (InvalidConfigurationException e) {  
	            e.printStackTrace();  
	        }  
	        try {  
	            myBatisGenerator.generate(null);  
	        } catch (SQLException e) {  
	            e.printStackTrace();  
	        } catch (IOException e) {  
	            e.printStackTrace();  
	        } catch (InterruptedException e) {  
	            e.printStackTrace();  
	        } 
		} catch (Exception e) {

			e.printStackTrace();
		}
		 
	}
}
